// license-header java merge-point
/**
 * This is only generated once! It will never be overwritten.
 * You can (and have to!) safely modify it by hand.
 */
package com.jrsystems.fleet.vehicle;
/**
 * @see com.jrsystems.fleet.vehicle.Vehicle
 */
public class VehicleDaoImpl
    extends com.jrsystems.fleet.vehicle.VehicleDaoBase
{
    /**
     * @see com.jrsystems.fleet.vehicle.VehicleDao#toVehicleVO(com.jrsystems.fleet.vehicle.Vehicle, com.jrsystems.fleet.vehicle.vo.VehicleVO)
     */
    public void toVehicleVO(
        com.jrsystems.fleet.vehicle.Vehicle source,
        com.jrsystems.fleet.vehicle.vo.VehicleVO target)
    {
        // @todo verify behavior of toVehicleVO
        super.toVehicleVO(source, target);
        // WARNING! No conversion for target.vehicleFuelType (can't convert source.getVehicleFuelType():com.jrsystems.fleet.vehicle.FuelType to com.jrsystems.fleet.vehicle.vo.FuelTypeVO
        // WARNING! No conversion for target.bodyType (can't convert source.getBodyType():com.jrsystems.fleet.vehicle.BodyType to com.jrsystems.fleet.vehicle.vo.BodyTypeVO
        // WARNING! No conversion for target.tripRequests (can't convert source.getTripRequests():com.jrsystems.fleet.trip.TripRequest to com.jrsystems.fleet.trip.vo.TripRequestVO[]
        // WARNING! No conversion for target.vehicleLogs (can't convert source.getVehicleLogs():com.jrsystems.fleet.log.VehicleLog to com.jrsystems.fleet.log.vo.VehicleLogVO[]
        // WARNING! No conversion for target.faults (can't convert source.getFaults():com.jrsystems.fleet.fault.Fault to com.jrsystems.fleet.fault.vo.FaultVO[]
        // WARNING! No conversion for target.route (can't convert source.getRoute():com.jrsystems.fleet.trip.Route to com.jrsystems.fleet.trip.vo.RouteVO
        // WARNING! No conversion for target.model (can't convert source.getModel():com.jrsystems.fleet.vehicle.Model to com.jrsystems.fleet.vehicle.vo.ModelVO
    }


    /**
     * @see com.jrsystems.fleet.vehicle.VehicleDao#toVehicleVO(com.jrsystems.fleet.vehicle.Vehicle)
     */
    public com.jrsystems.fleet.vehicle.vo.VehicleVO toVehicleVO(final com.jrsystems.fleet.vehicle.Vehicle entity)
    {
        // @todo verify behavior of toVehicleVO
        return super.toVehicleVO(entity);
    }


    /**
     * Retrieves the entity object that is associated with the specified value object
     * from the object store. If no such entity object exists in the object store,
     * a new, blank entity is created
     */
    private com.jrsystems.fleet.vehicle.Vehicle loadVehicleFromVehicleVO(com.jrsystems.fleet.vehicle.vo.VehicleVO vehicleVO)
    {
        // @todo implement loadVehicleFromVehicleVO
        throw new java.lang.UnsupportedOperationException("com.jrsystems.fleet.vehicle.loadVehicleFromVehicleVO(com.jrsystems.fleet.vehicle.vo.VehicleVO) not yet implemented.");

        /* A typical implementation looks like this:
        com.jrsystems.fleet.vehicle.Vehicle vehicle = this.load(vehicleVO.getId());
        if (vehicle == null)
        {
            vehicle = com.jrsystems.fleet.vehicle.Vehicle.Factory.newInstance();
        }
        return vehicle;
        */
    }

    
    /**
     * @see com.jrsystems.fleet.vehicle.VehicleDao#vehicleVOToEntity(com.jrsystems.fleet.vehicle.vo.VehicleVO)
     */
    public com.jrsystems.fleet.vehicle.Vehicle vehicleVOToEntity(com.jrsystems.fleet.vehicle.vo.VehicleVO vehicleVO)
    {
        // @todo verify behavior of vehicleVOToEntity
        com.jrsystems.fleet.vehicle.Vehicle entity = this.loadVehicleFromVehicleVO(vehicleVO);
        this.vehicleVOToEntity(vehicleVO, entity, true);
        return entity;
    }


    /**
     * @see com.jrsystems.fleet.vehicle.VehicleDao#vehicleVOToEntity(com.jrsystems.fleet.vehicle.vo.VehicleVO, com.jrsystems.fleet.vehicle.Vehicle)
     */
    public void vehicleVOToEntity(
        com.jrsystems.fleet.vehicle.vo.VehicleVO source,
        com.jrsystems.fleet.vehicle.Vehicle target,
        boolean copyIfNull)
    {
        // @todo verify behavior of vehicleVOToEntity
        super.vehicleVOToEntity(source, target, copyIfNull);
    }

}